package com.greenhouse.business.service;

import java.util.List;

import com.greenhouse.business.domain.BizAlarmLog;
import com.greenhouse.business.domain.vo.AlarmStatisticVo;

/**
 * 报警日志Service接口
 * 
 * @author greenhouse
 * @date 2021-05-07
 */
public interface IBizAlarmLogService {
	/**
	 * 查询报警日志
	 * 
	 * @param id 报警日志ID
	 * @return 报警日志
	 */
	public BizAlarmLog selectBizAlarmLogById(Long id);

	/**
	 * 查询报警日志列表
	 * 
	 * @param bizAlarmLog 报警日志
	 * @return 报警日志集合
	 */
	public List<BizAlarmLog> selectBizAlarmLogList(BizAlarmLog bizAlarmLog);

	/**
	 * 新增报警日志
	 * 
	 * @param bizAlarmLog 报警日志
	 * @return 结果
	 */
	public int insertBizAlarmLog(BizAlarmLog bizAlarmLog);

	/**
	 * 修改报警日志
	 * 
	 * @param bizAlarmLog 报警日志
	 * @return 结果
	 */
	public int updateBizAlarmLog(BizAlarmLog bizAlarmLog);

	/**
	 * 批量删除报警日志
	 * 
	 * @param ids 需要删除的报警日志ID
	 * @return 结果
	 */
	public int deleteBizAlarmLogByIds(Long[] ids);

	/**
	 * 删除报警日志信息
	 * 
	 * @param id 报警日志ID
	 * @return 结果
	 */
	public int deleteBizAlarmLogById(Long id);

	/**
	 * @Title: listByDeviceId
	 * @Description: TODO(这里用一句话描述这个方法的作用)
	 * @param id
	 * @return    參數描述
	 * @author: 雷扬
	 * @return List<BizAlarmLog>  返回类型
	 * @throws
	 */
	List<BizAlarmLog> listByDeviceId(Long id);

	/**
	 * @Title: listByNum
	 * @Description: TODO(这里用一句话描述这个方法的作用)
	 * @param num
	 * @return    參數描述
	 * @author: 雷扬
	 * @return String  返回类型
	 * @throws
	 */
	public List<BizAlarmLog> listByNum(int num);

	/**
	 * @Title: stasticAlarmByMonth
	 * @Description: TODO(这里用一句话描述这个方法的作用)
	 * @return    參數描述
	 * @author: 雷扬
	 * @return List<AlarmStatisticVo>  返回类型
	 * @throws
	 */
	List<AlarmStatisticVo> stasticAlarmByMonth();
}
